package cn.wolfcode.wolf2w.service;

import cn.wolfcode.wolf2w.domain.Destination;
import cn.wolfcode.wolf2w.domain.Strategy;
import cn.wolfcode.wolf2w.domain.StrategyCatalog;
import cn.wolfcode.wolf2w.queryObject.StrategyQueryObject;
import org.springframework.data.domain.Page;

import java.util.List;

public interface IStrategyService {
    void save(Strategy strategy);
    void update(Strategy strategy);
    void delete(String id);
    Strategy get(String id);
    List<Strategy> list();
    Page<Strategy> query(StrategyQueryObject qo);

    /**
     * 通过目的地id来查询所有对目的地的攻略
     * @param id
     * @return
     */
    List<Destination> queryStrategiesByDestId(String id);

    /**
     * 通过攻略分类的id来查找对应的攻略
     * @param id
     * @return
     */
    List<Strategy> queryStrategiesByCatalogId(String id);

    /**
     * 查询对应目的地 id 的点击量前 3 的攻略
     * @param destId
     * @return
     */
    List<Strategy> queryViewnumTop3ByDestId(String destId);
}
